/*  ----------------------------------------------------------------------------
 *  Arello Mobile
 *  Fast 3d Engine
 *  ----------------------------------------------------------------------------
 * Except where otherwise noted, this work is licensed under
 * http://creativecommons.org/licenses/by/3.0
 */

#ifndef __NETFILE_H__
#define __NETFILE_H__

#include "Resource.h"
#include <NoCopy.h>
#include <filesystem/String.hpp>

namespace liba
{
namespace resource
{
		
class NetFile : public Resource, private Nocopy
{
private:
	unsigned char * _fileData;
	unsigned int    _fileOffset;
	unsigned int    _fileSize;
public:
	explicit NetFile(const filesystem::String & name);
	virtual ~NetFile();
	virtual bool is_valid() const;
	virtual int read(void * data, int count);
	virtual int skip(int count);
	virtual int get_size() const;
	virtual int get_position() const;
	virtual void reset(int position);
};
		
}
}

using namespace liba;

#endif